﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ScriptCompare
{
    public enum ScriptSectionType : ushort
    {
        Global = 0,
        Namespace = 1,
        Class = 2,
        Struct = 3,
        Enumeration = 4
    };

    public interface IScriptSection
    {
        string SectionName { get; }
        ScriptSectionType SectionType { get; }
        bool SectionRequiresOrder { get; }
        bool SectionHighlighted { get; }

        ILineCollection SectionContents { get; protected set; }

        IList<IScriptSection> GetSectionChildren();        
        void AddChildSection(IScriptSection child);
        void RemoveChildSection(IScriptSection child);

        bool IsSectionCommented();
    }
}
